home *** CD-ROM | disk | FTP | other *** search
/ BCI NET / BCI NET Dec 94.iso / archives / programming / gui / gaded220.lha / GadEdit / GadEdit.DOC.ITA < prev    next >
Text File  |  1992-10-09  |  39KB  |  841 lines

  1.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  2.  
  3.  
  4.             Gadget's Editor V2.20 Copyright (C) 1992 Stefano Crimì
  5.             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  6.                        Un potentissimo editor di Gadget.
  7.                           Data di rilascio: 09 Oct 92
  8.  
  9.  
  10.                                Questioni legali
  11.                                ~~~~~~~~~~~~~~~~
  12.  
  13.             Questo programma è SHAREWARE: ciò significa che se lo usi e
  14.         lo  trovi utile, allora hai  l'obbligo morale di registrarti al
  15.         programma inviando £20.000 o  $20 all'autore. Ricorda che  solo
  16.         registrandoti al programma permetterai all'autore di continuare
  17.         a sviluppare altri programmi per l'Amiga.
  18.             Questo  programma può essere  distribuito liberamente nelle
  19.         BBS e  nei dischi  contenenti programmi  PD e  SHAREWARE purché
  20.         l'utente paghi solo il costo del dischetto. Per qualunque altro
  21.         caso è necessaria l'autorizzazione SCRITTA dell'autore.
  22.             Questo  programma non deve essere in nessun caso modificato
  23.         senza l'autorizzazione SCRITTA dell'autore. E' permessa solo la
  24.         compattazione con programmi tipo Lharc, PkAzip, ecc.
  25.  
  26.  
  27.  
  28.                                  AVVERTIMENTO
  29.                                  ~~~~~~~~~~~~
  30.  
  31.             Questo programma è distribuito così com'è. L'autore non  si
  32.         assume  nessuna  responsabilità  per  i  danni che il programma
  33.         potrebbe provocare: chi usa il programma lo fa a suo rischio  e
  34.         pericolo.
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.                                      - 1 -
  60.  
  61.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  62.  
  63.  
  64.                                  INTRODUZIONE
  65.                                  ~~~~~~~~~~~~
  66.  
  67.             Quando   si  disegnano  dei  Gadget  si  hanno  spesso  dei
  68.         problemi:  posizione   e  dimensione   errate,  caratteristiche
  69.         sbagliate  sono i più frequenti; per questo motivo ho deciso di
  70.         scrivere un programma che permettesse di disegnare e modificare
  71.         i Gadget di ogni  tipo (Booleani, Stringa e  Proporzionali) con
  72.         estrema  facilità. Il risultato è stato quest'ottimo programma,
  73.         di sicuro non perfetto ma certamente rispondente alle  esigenze
  74.         di  quasi  tutti  gli  utilizzatori.  Ovviamente  il  programma
  75.         consente  di  salvare  i  Gadget  creati  in C, Assembler o nel
  76.         formato  interno  del  programma  (per  poterlo  ricaricare  in
  77.         seguito).  Ho  scelto  il  C  e  l'Assembler  perché  essi sono
  78.         certamente  i  due  linguaggi  più  diffusi  nel  mondo  Amiga.
  79.         Evidentemente se  vi interessa  salvare il  codice in  un altro
  80.         linguaggio di programmazione potete dirmelo.
  81.             Scrivere  questo  programma  non  è stato affatto semplice,
  82.         soprattutto perché ho dovuto tener conto di tutte le  possibili
  83.         scelte  dell'utente; dopo un lungo  lavoro (durato alcuni mesi)
  84.         sono riuscito  ad ottenere  una versione  ormai priva  di bug e
  85.         perfettamente utilizzabile da tutti.
  86.  
  87.  
  88.  
  89.                                  IL PROGRAMMA
  90.                                  ~~~~~~~~~~~~
  91.  
  92.             Il programma può essere lanciato indifferentemente da CLI e
  93.         da  WorkBench; se  lo si  lancia da  CLI, il programma userà la
  94.         funzione  CreateProcess  della  DOS.library  per  liberare   il
  95.         processo CLI da cui è stato lanciato.
  96.             Il  programma, una volta lanciato,  apre uno schermo custom
  97.         di 640*256 pixel  con 2 bitplane  (4 colori). Ho  scelto questa
  98.         soluzione  per non affollare troppo  lo schermo del WorkBench e
  99.         per  non  avere  problemi  con  i  font  diversi  dal  Topaz 8.
  100.         All'inizio   sullo   schermo   appare   solo   il   banner   di
  101.         presentazione,  ma  tutte  le  scelte possono essere effettuate
  102.         tramite i menu (vedi paragrafo I MENU).
  103.             Il programma, appena lanciato, cercherà di caricare il File
  104.         GadEdit.cfg  nella directory corrente o, se non lo trova, nella
  105.         directory logica S:; se il File non esiste in nessuna delle due
  106.         directory,  il  programma  userà  le  impostazioni  di default,
  107.         mentre  se esiste, il programma userà le impostazioni contenute
  108.         in esso.
  109.             Il  programma,  per  funzionare,  richiede  la  presenza di
  110.         quattro    shared   library:   DOS.library,   Graphics.library,
  111.         Intuition.library e ReqTools.library;  le prime tre  si trovano
  112.         in ROM e quindi non ci sono problemi per il caricamento, mentre
  113.         la  ReqTools è  una library  esterna, da  mettere in  LIBS:. La
  114.         ReqTools.library è  Copyright (C)  Nico François  ed è  inclusa
  115.         nell'archivio del Gadget's Editor.
  116.             Il  programma  tenta  inoltre  di aprire la Locale.library;
  117.  
  118.  
  119.                                      - 2 -
  120.  
  121.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  122.  
  123.  
  124.         questa  è  una  nuova  library  del  S.O.  38.xx  e  serve  per
  125.         localizzare i programmi e  per renderli multilinguaggio; se  il
  126.         programma  trova la Locale.library, allora utilizzerà la lingua
  127.         desiderata dall'utente (evidentemente solo se disponibile). Per
  128.         rendere  disponibile  al  programma  le  varie  lingue  bisogna
  129.         copiare il File gadedit.catalog relativo alla lingua desiderata
  130.         nella  directory Locale:Catalogs/xxxxxx dove xxxxxx rappresenta
  131.         il  nome  della  lingua  desiderata  (Italiano, Deutsch, ecc.).
  132.         Naturalmente   se  il   programma  non   riesce  ad   aprire la
  133.         Locale.library userà la lingua inglese.
  134.             Nell'archivio originale sono forniti tutti i File necessari
  135.         per creare i gadedit.catalog  relativi ad ogni linguaggio.  Chi
  136.         crea  il gadedit.catalog  relativo ad  un linguaggio diverso da
  137.         quelli presenti nel  pacchetto originale è  gentilmente pregato
  138.         di  farmelo avere per consentirmi  di includerlo nelle versioni
  139.         future del programma.
  140.  
  141.  
  142.  
  143.                                     I MENU
  144.                                     ~~~~~~
  145.  
  146.             Il  programma  utilizza  tre  menu: Gadget (Gadget), Codice
  147.         (Code)  e Varie (General);  come si intuisce  dal nome il primo
  148.         menu  contiene  elementi  riguardanti  i  Gadget,  il   secondo
  149.         riguardanti  il  codice  ed  il  terzo  elementi  vari  che non
  150.         rientrano  nelle  due  categorie  precedenti. Esaminiamo ora in
  151.         dettaglio i tre menu.
  152.  
  153.  
  154.                                 IL MENU GADGET
  155.  
  156.             Il  primo menu, Gadget, contiene  tre item: Aggiungi (Add),
  157.         Cancella  (Delete)  e  Modifica  (Edit).  Il  primo permette di
  158.         creare  un nuovo Gadget, il secondo permette di cancellarne uno
  159.         ed  il  terzo  permette  di  modificare  un  Gadget  creato  in
  160.         precedenza;  naturalmente le ultime due  funzionano solo se c'è
  161.         almeno un Gadget presente. Tutti e tre gli item di questo  menu
  162.         hanno  degli short-cut: Aggiungi  viene richiamato con Amiga-A,
  163.         Cancella con Amiga-C e Modifica con Amiga-M.
  164.             Adesso vediamo  come funzionano  le tre  funzioni di questo
  165.         menu:  Aggiungi serve per creare nuovi  Gadget e vedremo il suo
  166.         funzionamento in un paragrafo a parte (CREARE UN NUOVO GADGET);
  167.         qui, invece, vedremo il funzionamento delle altre due  funzioni
  168.         (Cancella e Modifica).
  169.             La  prima serve  per cancellare  ed il  suo funzionamento è
  170.         semplicissimo: dopo averlo selezionato tramite menu, il  titolo
  171.         della  finestra cambia  chiedendo di  selezionare il  Gadget da
  172.         cancellare e, dopo che  l'utente lo ha selezionato,  provvede a
  173.         cancellarlo,  liberando  tutta  la  memoria occupata dal Gadget
  174.         stesso; ovviamente è possibile anche uscire dalla selezione col
  175.         tasto  ESC,  poiché  l'utente  potrebbe  aver  selezionato   la
  176.         funzione Cancella per errore.
  177.  
  178.  
  179.                                      - 3 -
  180.  
  181.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  182.  
  183.  
  184.             Anche  la funzione Modifica si comporta, inizialmente, come
  185.         la funzione  Cancella: però,  dopo aver  selezionato il Gadget,
  186.         invece  di  cancellarlo,  apre  un  Requester  che  permette di
  187.         modificarlo  (si  tratta  dello  stesso  Requester aperto dalla
  188.         funzione  Aggiungi). Evidentemente anche  qui è possibile usare
  189.         ESC se non si vuole modificare nessun Gadget.
  190.  
  191.  
  192.                                 IL MENU CODICE
  193.  
  194.             Nel secondo  menu abbiamo  solo due  item: Carica  (Load) e
  195.         Salva  (Save).  Anch'essi  possono  essere richiamati con delle
  196.         short-cut:  Carica  con  Amiga-L  e  Salva con Amiga-S. Il loro
  197.         funzionamento   è  abbastanza  intuitivo:  Carica  permette  di
  198.         caricare  un  File  in  formato Gadget's Editor precedentemente
  199.         salvato,  mentre  Salva  permette  di  salvare  i Gadget in tre
  200.         formati  diversi:  come  sorgente  Assembler,  come  sorgente C
  201.         oppure come File in formato Gadget's Editor.
  202.  
  203.  
  204.                               LA FUNZIONE CARICA
  205.  
  206.             Se  quando si seleziona la funzione  Carica ci sono già dei
  207.         Gadget visualizzati il programma chiederà all'utente tramite un
  208.         Requester  se  intende   cancellare  i  Gadget   già  presenti:
  209.         selezionando  sì i  Gadget saranno  cancellati, selezionando no
  210.         verranno lasciati al loro  posto. Inoltre se sono  presenti dei
  211.         Gadget   non  ancora  salvati,  il  programma  visualizzerà  un
  212.         Requester   chiedendo   all'utente   se   intende   continuare:
  213.         selezionando sì si andrà avanti, selezionando no si abbandonerà
  214.         la funzione Carica.
  215.             La   funzione   Carica   apre   il   File-Requester   della
  216.         ReqTools.library;  selezionando  Cancel  oppure  il  Gadget  di
  217.         chiusura  il programma terminerà la funzione Carica, altrimenti
  218.         procederà  al  caricamento  del  File  specificato.  Se il File
  219.         specificato  non esiste il programma  mostrerà un Requester per
  220.         avvisare l'utente e  terminerà la funzione  Carica. Se il  File
  221.         selezionato  non  è  un  File  in  formato  Gadget's Editor, il
  222.         programma avviserà l'utente tramite un Requester e terminerà la
  223.         funzione  Carica.  Se  invece  non  ci sono errori il programma
  224.         caricherà  il  File  e  creerà  i Gadget secondo le indicazioni
  225.         contenute nel File.
  226.  
  227.  
  228.                                LA FUNZIONE SALVA
  229.  
  230.             Appena selezionata la funzione Salva apre un Requester  che
  231.         permette  all'utente di scegliere il  tipo di File da generare;
  232.         si  tratta  di  quattro  possibili  scelte: Assembler, Gadget's
  233.         Editor,  C, Esci. Selezionando Assembler  si genera un sorgente
  234.         in assembler, scegliendo Gadget's  Editor si genera un  File in
  235.         formato  Gadget's Editor, scegliendo C si genera un sorgente in
  236.         C e  scegliendo Esci  si termina  la funzione  Salva. Dopo aver
  237.  
  238.  
  239.                                      - 4 -
  240.  
  241.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  242.  
  243.  
  244.         scelto  il  tipo  di  File  da  generare il programma aprirà un
  245.         File-Requester per  permettere all'utente  di inserire  il nome
  246.         del  File da creare; se si  seleziona Cancel oppure si preme il
  247.         Gadget  di  chiusura  del  Requester,  si uscirà immediatamente
  248.         dalla  funzione  Salva.  Se  il  File selezionato esiste già il
  249.         programma  aprirà  un  Requester  chiedendo  all'utente se deve
  250.         sovrascrivere  il File già presente  oppure no: selezionando sì
  251.         il  File  già  esistente  verrà  cancellato e la funzione Salva
  252.         proseguirà, selezionando no la funzione Salva terminerà.
  253.  
  254.  
  255.                                  IL MENU VARIE
  256.  
  257.             Questo  menu contiene cinque  item: Informazioni (Credits),
  258.         Cambia  Colori  (Change  Color),  Carica  Config (Load Config),
  259.         Salva  Config  (Save  Config)  e  Esci  (Quit);  anch'essi sono
  260.         selezionabili via short-cut (rispettivamente Amiga-I,  Amiga-P,
  261.         Amiga-R, Amiga-V e Amiga-E).
  262.             Selezionando  Informazioni il programma aprirà un Requester
  263.         che visualizza  alcuni dati  del programma  e dell'autore.  Con
  264.         Cambia  Colori il  programma aprirà  il Palette-Requester della
  265.         ReqTools.library permettendo all'utente di modificare i  colori
  266.         dello  schermo. Carica Config e Salva Config servono invece per
  267.         caricare una nuova configurazione e salvare quella  attualmente
  268.         usata  dal  programma  (attualmente  il  file di configurazione
  269.         contiene  solo  i  dati  relativi  ai  colori  dello  schermo).
  270.         Selezionando  Esci, infine, si uscirà  dal programma. La stessa
  271.         funzione di Esci  è svolta anche  dal Gadget di  chiusura della
  272.         finestra  e  dal  tasto  ESC  (tutti  e  tre chiamano la stessa
  273.         routine). Se i Gadget  visualizzati non sono stati  salvati, il
  274.         programma aprirà un Requester chiedendo se si intende realmente
  275.         uscire:   selezionando  sì  si  uscirà  dal  programma,  mentre
  276.         selezionando no il programma continuerà a girare.
  277.  
  278.  
  279.  
  280.                             CREARE UN NUOVO GADGET
  281.                             ~~~~~~~~~~~~~~~~~~~~~~
  282.  
  283.             Per  creare  un  nuovo  Gadget  basta  selezionare   l'item
  284.         Aggiungi  del menu  Gadget oppure  usare lo  short-cut relativo
  285.         (Amiga-A). Subito il titolo della finestra cambierà in  "Scegli
  286.         il   primo  vertice"  seguito   dalle  coordinate  attuali  del
  287.         puntatore; premendo il pulsante sinistro del mouse si sceglierà
  288.         quindi  il  primo  vertice;  dopo  aver  fatto questa scelta il
  289.         titolo  cambierà in  "Scegli il  secondo vertice" seguito dalla
  290.         dimensione del  Gadget. Muovendo  il puntatore  verrà disegnato
  291.         sullo  schermo il bordo del Gadget ed in alto verranno mostrate
  292.         le sue dimensioni. Premendo  il pulsante sinistro del  mouse si
  293.         sceglie  il secondo vertice e si  apre così un grande Requester
  294.         che  occupa  quasi  tutto  lo  schermo: si tratta del Requester
  295.         Descrizione   Gadget  che   permette  di   impostare  tutte  le
  296.         caratteristiche del Gadget (posizione, dimensioni, flag,  tipo,
  297.  
  298.  
  299.                                      - 5 -
  300.  
  301.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  302.  
  303.  
  304.         ecc.);  questo stesso Requester  viene chiamato anche dall'item
  305.         Modifica del menu Gadget  per modificare le caratteristiche  di
  306.         un Gadget già esistente.
  307.             Il  Requester è diviso in cinque parti: la prima, la più in
  308.         alto, consente di impostare posizione e dimensioni, la  seconda
  309.         consente  di impostare i vari Flag (GADGHCOMP, GADGHBOX, ecc.),
  310.         la  terza  permette  di  impostare  i paramentri di attivazione
  311.         (RELVERIFY,   GADGIMMEDIATE,  ecc.),  la   quarta  permette  di
  312.         scegliere  il  tipo  di  Gadget  (BOOLGADGET, PROPGADGET, ecc.)
  313.         mentre  l'ultima parte contiene alcuni Gadget che consentono di
  314.         creare le  strutture GadgetRender,  SelectRender, GadgetText  e
  315.         SpecialInfo  del  Gadget,  di  scegliere  il nome del Gadget e,
  316.         infine, di  accettare o  rifiutare le  impostazioni (tramite  i
  317.         Gadget   Prosegui   e   Cancella).   Nei   prossimi   paragrafi
  318.         analizzeremo in maniera particolareggiata queste cinque parti.
  319.  
  320.  
  321.                             POSIZIONE E DIMENSIONI
  322.  
  323.             La  prima  parte  del  Requester  contiene  quattro  Gadget
  324.         Stringa  in  formato  pseudo-3D.  I  Gadget  sono, nell'ordine,
  325.         Sinistra, Alto, Larghezza  e Altezza e,  evidentemente, possono
  326.         assumere solo valori numerici. Come fanno intuire i nomi questi
  327.         Gadget  contengono nell'ordine: la  posizione rispetto al bordo
  328.         sinistro, quella  rispetto al  bordo superiore,  la larghezza e
  329.         l'altezza, tutti espressi in pixel.
  330.             Inoltre  premendo Return mentre si  sta inserendo il valore
  331.         in un Gadget, si attiverà automaticamente il Gadget successivo.
  332.  
  333.  
  334.                                      FLAG
  335.  
  336.             La seconda  parte del  Requester è  interamente dedicata ai
  337.         Flag del Gadget: ci sono infatti ben 10 Gadget con cui l'utente
  338.         può  scegliere le caratteristiche del Gadget; ma procediamo con
  339.         ordine:  i  primi  quattro  Gadget  servono  per  scegliere  il
  340.         comportamento  del Gadget alla pressione del tasto sinistro del
  341.         mouse: con GADGHCOMP (impostato di default nei nuovi Gadget) il
  342.         Gadget selezionato sarà complementare al Gadget non selezionato
  343.         (complementare significa che il colore 0 diventa 3, l'1 diventa
  344.         2  e  viceversa),  con  GADGHBOX  il  Gadget  selezionato  sarà
  345.         circondato  da un rettangolo colorato, con GADGHIMAGE il Gadget
  346.         selezionato mostrerà i dati contenuti in gg_SelectRender  (vedi
  347.         dopo) mentre con GADGHNONE il Gadget selezionato resterà uguale
  348.         a quello non selezionato.
  349.             Naturalmente   questi   quattro   Gadget   sono mutualmente
  350.         esclusivi  tra  di  loro,  quindi  selezionandone  uno   quello
  351.         precedentemente  attivo verrà deselezionato (naturalmente se si
  352.         riseleziona il  Gadget già  attivo non  succederà assolutamente
  353.         nulla).
  354.             Gli  altri  sei  Gadget  servono  invece  per  impostare le
  355.         caratteristiche e  sono tutti  di tipo  TOGGLE (ovvero  possono
  356.         essere o selezionati o deselezionati); ovviamente il programma,
  357.  
  358.  
  359.                                      - 6 -
  360.  
  361.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  362.  
  363.  
  364.         quando    verrà   premuto    Prosegui,   imposterà    solo   le
  365.         caratteristiche selezionate.
  366.             I  sei  Gadget  sono  nell'ordine  GADGIMAGE,   GRELBOTTOM,
  367.         GRELRIGHT,  GRELWIDTH, GRELHEIGHT e  SELECTED. GADGIMAGE indica
  368.         se il Gadget usa strutture  Image o Border: quando è  impostato
  369.         userà  le  strutture  Image,  quando  non  è impostato userà le
  370.         strutture Border (queste strutture vengono poi allocate tramite
  371.         GadgetRender e  SelectRender). GRELBOTTOM  e GRELRIGHT  servono
  372.         invece  per usare le  coordinate relative al  basso (invece che
  373.         all'alto) e a destra (invece che a sinistra), mentre  GRELWIDTH
  374.         e  GRELHEIGHT servono  per usare  larghezza e  altezza relative
  375.         all'altezza e alla larghezza dell'elemento (Window o Requester)
  376.         che contiene il Gadget;  evidentemente se si usano  questi Flag
  377.         si  dovranno impostare  i campi  Width e  Height del Gadget con
  378.         valori  negativi.  Infine  abbiamo  SELECT  che  serve  per far
  379.         apparire il Gadget già selezionato.
  380.  
  381.  
  382.                                   ACTIVATION
  383.  
  384.             La  terza parte del  Requester è dedicata  agli otto Gadget
  385.         che permettono di impostare gli attributi del Gadget; essi sono
  386.         RELVERIFY, GADGIMMEDIATE, ENDGADGET, FOLLOWMOUSE, TOGGLESELECT,
  387.         STRINGCENTER, STRINGRIGHT e LONGINT.
  388.             I  primi  due  (RELVERIFY  e  GADGIMMEDIATE)  servono   per
  389.         scegliere  il  tipo  di  messaggi  che  Intuition deve generare
  390.         quando  l'utente  seleziona  il  Gadget;  impostando  il  primo
  391.         Intuition   genererà  un  messaggio  di  tipo  GADGETUP  quando
  392.         l'utente  deseleziona  il  Gadget  mentre impostando il secondo
  393.         Intuition  genererà  un  messaggio  di  tipo  GADGETDOWN quando
  394.         l'utente seleziona il Gadget. Ovviamente è possibile impostarli
  395.         entrambi, in modo che Intuition generi un messaggio  GADGETDOWN
  396.         quando  il Gadget  viene selezionato  ed un  messaggio GADGETUP
  397.         quando viene deselezionato.
  398.             ENDGADGET  serve   solo  per   i  Requester-Gadget   e,  se
  399.         impostato,  provoca la chiusura del  Requester a cui appartiene
  400.         il Gadget non appena quest'ultimo viene selezionato.
  401.             FOLLOWMOUSE serve  solo con  i Gadget  Proporzionali e,  se
  402.         impostato,  genera dei messaggi di tipo MOUSEMOVE, utili quando
  403.         il Gadget Proporzionale serve per far scrollare un testo, ecc.
  404.             TOGGLESELECT    serve    per    non    far    deselezionare
  405.         automaticamente  i  Gadget:  normalmente  quando  si  preme  il
  406.         pulsante   sinistro   del   mouse   sul   Gadget,  questo viene
  407.         selezionato,  e quando il pulsante  viene rilasciato, il Gadget
  408.         viene  deselezionato;  impostando  TOGGLESELECT,  invece, anche
  409.         rilasciando   il   pulsante   il   Gadget   resta  selezionato.
  410.         Evidentemente per  deselezionarlo basta  premere nuovamente  il
  411.         pulsante sinistro del mouse su di esso.
  412.             Gli  ultimi tre Gadget  servono solo per  i Gadget Stringa:
  413.         impostando  LONGINT  il  Gadget  Stringa  accetterà solo valori
  414.         numerici, mentre impostando STRINGCENTER e STRINGRIGHT il testo
  415.         verrà   rispettivamente  centrato  e   giustificato  a  destra.
  416.         Naturalmente  questi  due  Gadget  sono  mutualmente esclusivi,
  417.  
  418.  
  419.                                      - 7 -
  420.  
  421.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  422.  
  423.  
  424.         quindi  selezionandone  uno  si  deselezionerà  automaticamente
  425.         l'altro.
  426.  
  427.  
  428.                                      TYPE
  429.  
  430.             La quarta parte del Requester è occupata da quattro  Gadget
  431.         che  permettono di scegliere il tipo  di Gadget da creare; essi
  432.         sono BOOLGADGET, GADGET0002, PROPGADGET e STRGADGET.
  433.             Questi Gadget  sono mutualmente  esclusivi e  permettono di
  434.         scegliere  il tipo  di Gadget:  BOOLGADGET crea Gadget Booleani
  435.         (che possono assumere due stati: selezionati o  deselezionati),
  436.         PROPGADGET  crea Gadget Proporzionali (usati soprattutto quando
  437.         sullo schermo  vengono visualizzati  solo una  parte dei  dati)
  438.         mentre   STRGADGET  crea  i   Gadget  Stringa  (che  permettono
  439.         l'inserimento di un testo qualsiasi). GADGET0002, invece, non è
  440.         selezionabile perché la  Commodore non ha  mai chiarito il  suo
  441.         significato.
  442.  
  443.  
  444.                                 L'ULTIMA PARTE
  445.  
  446.             L'ultima  parte del  Requester è  occupata da sette Gadget,
  447.         sei  Booleani  ed  uno  Stringa; quest'ultimo (affiancato dalla
  448.         scritta  Nome del Gadget) serve per inserire il nome da dare al
  449.         Gadget (azione  obbligatoria) mentre  i sei  Gadget Booleani si
  450.         dividono  a  loro  volta  in  due  categorie: i quattro in alto
  451.         servono  per  impostare  i  contorni,  i testi, le immagini del
  452.         Gadget  e li analizzeremo tra un istante, mentre gli altri due,
  453.         quelli collocati  nella parte  più bassa  del Requester servono
  454.         per accettare (Prosegui) o rifiutare (Cancella) le impostazioni
  455.         appena  effettuate. Ovviamente  selezionando uno  di questi due
  456.         Gadget il Requester verrà chiuso.
  457.  
  458.  
  459.                                  GadgetRender
  460.  
  461.             Selezionando questo Gadget il programma aprirà un Requester
  462.         che permetterà all'utente  di costruire i  bordi o le  immagini
  463.         del  Gadget  non  selezionato  (per  quello selezionato si deve
  464.         ricorrere a  SelectRender). Se  GADGIMAGE non  è selezionato il
  465.         Requester  aperto  permetterà  di  creare  bordi,  se  invece è
  466.         selezionato il Requester aperto consentirà di creare  immagini.
  467.         Ma procediamo con ordine esaminando i due Requester (quello per
  468.         i bordi e quello per le immagini).
  469.  
  470.  
  471.                              GadgetRender: i bordi
  472.  
  473.             Se  GADGIMAGE  non  è  selezionato,  il programma aprirà un
  474.         Requester per creare i bordi del Gadget; il Requester aperto ha
  475.         la stessa dimensione del Requester generale dei Gadget e consta
  476.         di cinque Gadget fissi  più altri due che  vengono visualizzati
  477.  
  478.  
  479.                                      - 8 -
  480.  
  481.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  482.  
  483.  
  484.         solo  se non sono  già stati creati  dei bordi. I cinque Gadget
  485.         fissi sono divisi in  due righe: nella prima  abbiamo Prossimo,
  486.         Precedente,  Aggiungi e  Cancella mentre  nella seconda abbiamo
  487.         Prosegui; i primi due Gadget servono per far scorrere la  lista
  488.         dei  bordi sullo schermo (possono esistere diversi bordi per un
  489.         unico Gadget),  il terzo  ed il  quarto servono  per creare una
  490.         nuova   struttura  Border   e  cancellare   quella  attualmente
  491.         visualizzata,   mentre   l'ultimo   serve   per   accettare  le
  492.         impostazioni appena effettuate.
  493.             Se  non sono già state  allocate delle struttura Border, il
  494.         Requester mostrerà la scritta "Non c'è alcuna struttura  Border
  495.         allocata!"  e visualizzerà  altri due  Gadget: Crea  Bordo 3D e
  496.         Crea Stringa3D; questi due Gadget servono per creare dei  bordi
  497.         particolari: il primo crea dei bordi pseudo-3D (i normali bordi
  498.         dei  Gadget Booleani del 2.0) mentre  il secondo crea dei bordi
  499.         pseudo  3D  per  Gadget  Stringa  (come  nel 2.0); naturalmente
  500.         selezionando uno di questi due Gadget essi scompariranno mentre
  501.         apparirà la prima struttura Border appena creata.
  502.             Quando  esistono già  delle strutture  Border, il Requester
  503.         visualizza tutti i dati  relativi a quella attualmente  attiva:
  504.         in alto si trovano cinque Gadget che indicano le coordinate del
  505.         bordo  (Sinistra e  Alto), il  colore, il  tipo di tracciamento
  506.         (JAM0, JAM1, ecc.)  ed il numero  di vertici che  compongono il
  507.         bordo; nella parte centrale si trovano invece le coordinate dei
  508.         18  vertici  che  possono  comporre  il bordo (difficilmente si
  509.         usano più di 18 vertici).
  510.  
  511.  
  512.                            GadgetRender: le immagini
  513.  
  514.             Se  GADGIMAGE  è   selezionato,  il  programma   aprirà  un
  515.         Requester  per  creare  le  immagini  del  Gadget; il Requester
  516.         aperto assomiglia  molto a  quello che  crea i  bordi (hanno le
  517.         stesse  dimensioni  ed  i  cinque  Gadget  inferiori (Prossimo,
  518.         Precedente, Aggiungi, Cancella e Prosegui) sono i medesimi,  ma
  519.         cambia la parte relativa ai dati da impostare).
  520.             Come  per il Requester  Descrizione Border, se  non ci sono
  521.         strutture  Image  allocate  il  Requester riporterà la scritta:
  522.         "Non  c'è alcuna  struttura Image  allocata!". Se invece esiste
  523.         almeno una struttura Image allocata, il Requester presenterà  i
  524.         dati  di quella  attualmente visualizzata  (per far scorrere le
  525.         strutture si devono usare i Gadget Prossimo e Precedente).
  526.             I dati riportati dal Requester che riguardano la  struttura
  527.         Image  sono sette: Sinistra  e Alto (che  indicano la posizione
  528.         rispetto al vertice superiore sinistro del Gadget), Larghezza e
  529.         Altezza  (che  indicano  le  dimensioni  dell'immagine), Numero
  530.         Piani (che indica il numero di BitPlane), PlanePick (che indica
  531.         in  quali  BitPlane  deve  andare  l'immagine: ad esempio con 3
  532.         l'immagine andrà nei  Bitplane 0 e  1) e PlaneOnOff  (che serve
  533.         per  azzerare o attivare i  BitPlane non usati. Inoltre vengono
  534.         attivati due Gadget (Carica Bitmap e Carica IFF) che aprono  un
  535.         File-Requester  permettendo all'utente  di scegliere l'immagine
  536.         desiderata: con Carica Bitmap verrà caricata un'immagine Bitmap
  537.  
  538.  
  539.                                      - 9 -
  540.  
  541.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  542.  
  543.  
  544.         (e  quindi  i  campi  Larghezza,  Altezza e Numero Piani devono
  545.         essere impostati  PRIMA di  selezionare il  Gadget) mentre  con
  546.         Carica IFF verrà caricata un'immagine IFF (e quindi non bisogna
  547.         impostare  nessun  campo,  visto  che  nel  File  IFF  sono già
  548.         contenuti tutti i dati necessari per visualizzare l'immagine).
  549.  
  550.  
  551.                                  SelectRender
  552.  
  553.             Selezionando questo Gadget il programma aprirà un Requester
  554.         che permetterà all'utente  di costruire i  bordi o le  immagini
  555.         del  Gadget  selezionato  (per  quello  non selezionato si deve
  556.         ricorrere a  GadgetRender). Se  GADGIMAGE non  è selezionato il
  557.         Requester  aperto  permetterà  di  creare  bordi,  se  invece è
  558.         selezionato il Requester aperto consentirà di creare  immagini.
  559.         I  Requester aperti sono identici  a quelli del GadgetRender, e
  560.         quindi vanno usati nello stesso modo.
  561.  
  562.  
  563.                                   GadgetText
  564.  
  565.             Selezionando questo Gadget il programma aprirà un Requester
  566.         che permetterà all'utente  di costruire le  strutture IntuiText
  567.         del  Gadget  (queste  strutture  servono  per  visualizzare dei
  568.         testi). Se non esiste nessuna struttura IntuiText allocata,  il
  569.         Requester   mostrerà  la  scritta  "Non  c'è  alcuna  struttura
  570.         IntuiText  allocata!",   mentre  se   ne  esiste   almeno  una,
  571.         visualizzerà  i  dati  di  quella  attualmente attiva. Come nel
  572.         Requester del GadgetRender, anche  qui vi sono i  cinque Gadget
  573.         Prossimo, Precedente, Aggiungi, Cancella e Procedi che svolgono
  574.         la   stessa   funzione   vista   nella   sezione   relativa  al
  575.         GadgetRender.
  576.             I dati relativi alla  struttura IntuiText che il  Requester
  577.         visualizza  sono  sei:  Sinistra,  Alto, Colore, Colore Sfondo,
  578.         Tracciamento  e  Testo;  i  primi  due servono per impostare le
  579.         coordinate  del testo  (rispetto al  vertice superiore sinistro
  580.         del Gadget),  il terzo  ed il  quarto servono  per impostare il
  581.         colore  del testo e quello dello  sfondo su cui andrà il testo,
  582.         il quinto imposta il metodo di tracciamento (JAM0, JAM1,  ecc.)
  583.         mentre l'ultimo serve per inserire il testo da visualizzare.
  584.  
  585.  
  586.                                   SpecialInfo
  587.  
  588.             Il  Gadget SpecialInfo serve a impostare lo SpecialInfo del
  589.         Gadget che si sta creando  o modificando; esistono due tipi  di
  590.         SpecialInfo:  PropInfo e StringInfo. Il  primo è lo SpecialInfo
  591.         specifico  per  i  Gadget  Proporzionali,  mentre  il secondo è
  592.         quello specifico per i Gadget Stringa (gli altri tipi di Gadget
  593.         non  posseggono strutture speciali dedicate). Per questo motivo
  594.         il Gadget SpecialInfo viene riconosciuto solo se il Gadget è di
  595.         tipo Stringa o Proporzionale.
  596.             Se il Gadget  è di tipo  STRGADGET, il programma  aprirà un
  597.  
  598.  
  599.                                     - 10 -
  600.  
  601.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  602.  
  603.  
  604.         Requester  che consta di  tre Gadget: Num  Chars, Undo Buffer e
  605.         Procedi. Il primo è un  Gadget Stringa di tipo LONGINT  con cui
  606.         si  imposta il numero massimo di caratteri del buffer (compreso
  607.         il NULL  finale, quindi  mettendo 10,  il buffer  consterà di 9
  608.         caratteri + il NULL finale), il secondo è un Gadget Booleano di
  609.         tipo  TOGGLE (selezionato o deselezionato) che serve per creare
  610.         l'UnDo-Buffer, mentre  il terzo  Gadget serve  per accettare le
  611.         impostazioni fatte.
  612.             Se  invece  il  Gadget  è  di tipo PROPGADGET, il programma
  613.         aprirà un Requester  composto da nove  Gadget: i primi  quattro
  614.         (AUTOKNOB,  BORDERLESS,  FREEHORIZ  e  FREEVERT)  sono  di tipo
  615.         TOGGLE e servono per  impostare le caratteristiche del  Gadget:
  616.         AUTOKNOB  genera  automaticamente  la  manopola  del  Gadget (è
  617.         consigliabile  impostarlo  sempre),  BORDERLESS  serve  per non
  618.         creare  i  bordi  del  Gadget,  FREEHORIZ  e  FREEVERT  vengono
  619.         impostati   per   permettere   rispettivamente   lo scorrimento
  620.         orizzontale  e  quello  verticale  della  manopola.  Il secondo
  621.         gruppo consta invece di quattro Gadget Stringa di tipo LONGINT:
  622.         HorizPot, VertPot,  HorizBody e  VertBody. I  primi due servono
  623.         per  impostare la  posizione della  manopola, mentre gli ultimi
  624.         due per  impostarne la  grandezza. Il  valore massimo  è 65535,
  625.         quindi  per  avere  un  Gadget  Proporzionale  a  10  posizioni
  626.         bisognerà impostare  il Body  (orizzontale o  verticale) a 6553
  627.         (65535/10).
  628.             Infine  c'è  il  Gadget  Procedi  con  cui  si accettano le
  629.         impostazioni appena fatte.
  630.  
  631.  
  632.  
  633.                                   REGISTRARSI
  634.                                   ~~~~~~~~~~~
  635.  
  636.             Se vuoi registrarti al programma devi mandare $20 o £20.000
  637.         all'autore. Il modo più semplice è di mandarli dentro un  busta
  638.         insieme ad una lettera inviata a:
  639.  
  640.                                  Stefano Crimì
  641.                               Via Don Minzoni 28
  642.                              I-93100 CALTANISSETTA
  643.                                     ITALIA
  644.  
  645.  
  646.  
  647.                                  DISTRIBUZIONE
  648.                                  ~~~~~~~~~~~~~
  649.  
  650.             L'archivio  completo  del  Gadget's  Editor  (GADED220.LHA)
  651.         contiene i seguenti File:
  652.  
  653.         GadEdit/GadEdit                               98232 byte
  654.         GadEdit/GadEdit.info                           1562 byte
  655.         GadEdit/GadEdit.DOC.ITA                       39378 byte
  656.         GadEdit/GadEdit.DOC.ENG                       38965 byte
  657.  
  658.  
  659.                                     - 11 -
  660.  
  661.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  662.  
  663.  
  664.         GadEdit/libs13/ReqTools.library               39456 byte
  665.         GadEdit/libs20/ReqTools.library               34920 byte
  666.         GadEdit/Catalogs/Italiano/gadedit.catalog      2752 byte
  667.         GadEdit/Catalogs/Deutsch/gadedit.catalog       2798 byte
  668.         GadEdit/Catalogs/Français/gadedit.catalog      2676 byte
  669.         GadEdit/Catalogs/CatSource.LHA                 6375 byte
  670.  
  671.             E'   vietata  la  distribuzione   dei  singoli  File:  solo
  672.         l'archivio completo può essere distribuito tramite banche dati,
  673.         Fish Disk, ecc.
  674.             I File libs13/ReqTools e libs20/ReqTools sono Copyright (C)
  675.         Nico François. Tutti gli altri File sono Copyright (C)  Stefano
  676.         Crimì.
  677.  
  678.  
  679.  
  680.                               CONTATTARE L'AUTORE
  681.                               ~~~~~~~~~~~~~~~~~~~
  682.  
  683.             Se  hai  qualche  commento  da  fare  su  questo programma,
  684.         riguardante   problemi,   migliorie   apportabili,   ecc., puoi
  685.         scrivermi al seguente indirizzo:
  686.  
  687.                                  Stefano Crimì
  688.                               Via Don Minzoni 28
  689.                              I-93100 CALTANISSETTA
  690.                                     ITALIA
  691.  
  692.             Se invece preferisci contattarmi tramite posta elettronica,
  693.         puoi mandarmi un matrix ai seguenti indirizzi Fidonet:
  694.  
  695.         Stefano Crimì 2:332/505.12@Fidonet.org
  696.                       2:335/502.1@Fidonet.org
  697.  
  698.  
  699.  
  700.                                 RICONOSCIMENTI
  701.                                 ~~~~~~~~~~~~~~
  702.  
  703.             Ci  sono alcune persone a cui sono molto grato, poiché solo
  704.         grazie a loro ho potuto finire questo programma; si tratta di:
  705.  
  706.             Nico François - Per la mitica ReqTools.library.
  707.  
  708.             Marco Stagno,  Nicola Soggia  e Sebastiano  Vigna -  Per le
  709.         spiegazioni sulla struttura dei File IFF-ILBM.
  710.  
  711.             Peter Simons - Per i suoi utili consigli.
  712.  
  713.             Massimiliano  Augello, Mario Murè e  tutti i point di Speed
  714.         Of Life e Suburbia - Per il loro indispensabile aiuto morale.
  715.  
  716.  
  717.  
  718.  
  719.                                     - 12 -
  720.  
  721.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  722.  
  723.  
  724.                              STORIA DEL PROGRAMMA
  725.                              ~~~~~~~~~~~~~~~~~~~~
  726.  
  727.         ***************************************************************
  728.         Gadget's Editor 2.00 (20-Sep-92)
  729.  
  730.             Prima versione distribuibile.
  731.  
  732.         ***************************************************************
  733.         Gadget's Editor 2.10 (26-Sep-92)
  734.  
  735.             Fissati due bug del programma:
  736.               -  il programma  funziona adesso  anche in  assenza della
  737.                 Locale.library.
  738.               - la funzione Carica adesso funziona correttamente (nelle
  739.                 precedenti   versioni    non   venivano    riconosciute
  740.                 correttamente le strutture IntuiText).
  741.  
  742.         ***************************************************************
  743.         Gadget's Editor 2.20 (09-Oct-92)
  744.  
  745.             Fissato un piccolo bug:
  746.               -  adesso è possibile cambiare  il nome del Gadget quando
  747.                 lo si modifica.
  748.             Adesso  lo  schermo  aperto  dal  programma  ha  le  stesse
  749.             dimensioni dello schermo del Workbench.
  750.  
  751.         ***************************************************************
  752.  
  753.  
  754.  
  755.  
  756.  
  757.  
  758.  
  759.  
  760.  
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767.  
  768.  
  769.  
  770.  
  771.  
  772.  
  773.  
  774.  
  775.  
  776.  
  777.  
  778.  
  779.                                     - 13 -
  780.  
  781.         Gadget's Editor V2.20   Manuale  Utente   Gadget's Editor V2.20
  782.  
  783.  
  784.                                 INDICE GENERALE
  785.                                 ~~~~~~~~~~~~~~~
  786.  
  787.         Questioni legali...........................................  1
  788.         AVVERTIMENTO...............................................  1
  789.         INTRODUZIONE...............................................  2
  790.         IL PROGRAMMA...............................................  2
  791.         I MENU.....................................................  3
  792.             IL MENU GADGET.........................................  3
  793.             IL MENU CODICE.........................................  4
  794.                 LA FUNZIONE CARICA.................................  4
  795.                 LA FUNZIONE SALVA..................................  4
  796.             IL MENU VARIE..........................................  5
  797.         CREARE UN NUOVO GADGET.....................................  5
  798.             POSIZIONE E DIMENSIONI.................................  6
  799.             FLAG...................................................  6
  800.             ACTIVATION.............................................  7
  801.             TYPE...................................................  8
  802.             L'ULTIMA PARTE.........................................  8
  803.                 GadgetRender.......................................  8
  804.                     GadgetRender: i bordi..........................  8
  805.                     GadgetRender: le immagini......................  9
  806.                 SelectRender....................................... 10
  807.                 GadgetText......................................... 10
  808.                 SpecialInfo........................................ 10
  809.         REGISTRARSI................................................ 11
  810.         DISTRIBUZIONE.............................................. 11
  811.         CONTATTARE L'AUTORE........................................ 12
  812.         RICONOSCIMENTI............................................. 12
  813.         STORIA DEL PROGRAMMA....................................... 13
  814.         INDICE GENERALE............................................ 14
  815.  
  816.  
  817.  
  818.  
  819.  
  820.  
  821.  
  822.  
  823.  
  824.  
  825.  
  826.  
  827.  
  828.  
  829.  
  830.  
  831.  
  832.  
  833.  
  834.  
  835.  
  836.  
  837.  
  838.  
  839.                                     - 14 -
  840.  
  841.